struct ListNode* FindKthToTail(struct ListNode* pHead, int k)
{
    struct ListNode* fast = pHead;
    struct ListNode* slow = pHead;
    if (pHead == NULL || k == 0)
        return NULL;

    for (int i = 0; i < k; i++)
    {
        if (fast == NULL)
            return NULL;
        fast = fast->next;
    }

    while (fast != NULL)
    {
        fast = fast->next;
        slow = slow->next;
    }

    return slow;
    // write code here
}